package com.gitee.lougnib.simplekits.quick_generator.common.constants;

/**
 * 画面布局行。
 */
public enum ScreenLayoutRow {

    /**
     * 新行。
     */
    NEW_ROW("1"),
    /**
     * 新区域。
     */
    NEW_AREA("2"),
    /**
     * 新表。
     */
    NEW_TABLE("3");

    private String value;

    private ScreenLayoutRow(String value) {
        this.value = value;
    }
    
    /**
     * 取得值。
     */
    public String getValue() {
        return this.value;
    }
    
    /**
     * 取得名称。
     */
    public String getName() {
        return ScreenLayoutRow.getName(this.value);
    }
    
    /**
     * 判断值是否相同。
     */
    public boolean equalsValue(String value) {
        return this.value.equals(value);
    }
    
    /**
     * 根据值取得枚举类型。
     *
     * @param value 值
     * @return 枚举类型
     */
    public static ScreenLayoutRow getEnum(String value) {
        if (ScreenLayoutRow.NEW_ROW.equalsValue(value)) {
            return ScreenLayoutRow.NEW_ROW;
        } else if (ScreenLayoutRow.NEW_AREA.equalsValue(value)) {
            return ScreenLayoutRow.NEW_AREA;
        } else if (ScreenLayoutRow.NEW_TABLE.equalsValue(value)) {
            return ScreenLayoutRow.NEW_TABLE;
        }

        return null;
    }
    
    /**
     * 根据值取得名称。
     *
     * @param value 值
     * @return 名称
     */
    public static String getName(String value) {
        if (ScreenLayoutRow.NEW_ROW.equalsValue(value)) {
            return "新行";
        } else if (ScreenLayoutRow.NEW_AREA.equalsValue(value)) {
            return "新区域";
        } else if (ScreenLayoutRow.NEW_TABLE.equalsValue(value)) {
            return "新表";
        }

        return null;
    }
}